<?php
/**
 * 路由核心类
 */
namespace core\lib;
//use \core\lib\config;
class route
{

    public $ctrl;//控制器
    public $action;//方法

    public function __construct()
    {
        // xxx.com/index/index
        /**
         * 1:隐藏index.php
         * 2:获取URL 参数部分
         * 3：返回对应控制器和方法
         */
//    p($_SERVER);
        //处理URL 控制器与方法
        if (isset($_SERVER['REQUEST_URI']) && $_SERVER['REQUEST_URI'] != '/') {
            $path = $_SERVER['REQUEST_URI'];  //  /index/index
            // p(trim($path,'/'));
            $pathArr = explode('/', trim($path, '/'));  //   index/index
//        p($pathArr);


            //获取配置文件中，默认的控制器与方法
            $defaultCtrl = config::getConfig('CTRL', 'route');
            $defaultAction = config::getConfig('ACTION', 'route');

            $this->ctrl = isset($pathArr[0]) ? $pathArr[0] : $defaultCtrl;
            $this->action = isset($pathArr[1]) ? $pathArr[1] : $defaultAction;

            // url 多余部分转成 GET
            // id/1/tp/23/test/232
            // p($pathArr);
            $count = count($pathArr) + 2;
            $i = 2;
            while ($i < $count) {
                if (isset($pathArr[$i + 1])) {
                    $_GET[$pathArr[$i]] = $pathArr[$i + 1];
                }
                $i = $i + 2;
            }

        } else {
            $this->ctrl = config::getConfig('CTRL', 'route');
            $this->action = config::getConfig('ACTION', 'route');
        }
    }
}